
package br.com.viaembratel.modulointegrador.vialivre.consumidorv1;

import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
import br.com.viaembratel.vialivre.modelo.prepago.consumidor.v1_0_0.types.TipoPessoaType;


/**
 * <p>Java class for anonymous complex type.
 * 
 * <p>The following schema fragment specifies the expected content contained within this class.
 * 
 * <pre>
 * &lt;complexType>
 *   &lt;complexContent>
 *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
 *       &lt;sequence>
 *         &lt;element name="identificadorConsumidor" type="{http://www.w3.org/2001/XMLSchema}long" minOccurs="0"/>
 *         &lt;element name="dadosCadastrais">
 *           &lt;complexType>
 *             &lt;complexContent>
 *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
 *                 &lt;sequence>
 *                   &lt;element name="nome">
 *                     &lt;simpleType>
 *                       &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
 *                         &lt;maxLength value="100"/>
 *                       &lt;/restriction>
 *                     &lt;/simpleType>
 *                   &lt;/element>
 *                   &lt;element name="tipoPessoa" type="{http://www.viaembratel.com.br/vialivre/modelo/prepago/consumidor/v1_0_0/types}TipoPessoaType"/>
 *                   &lt;element name="documento" type="{http://www.viaembratel.com.br/vialivre/modelo/prepago/consumidor/v1_0_0/types}DocumentoType"/>
 *                   &lt;element name="inscricaoEstadual" type="{http://www.viaembratel.com.br/vialivre/modelo/prepago/consumidor/v1_0_0/types}InscricaoEstadualType" minOccurs="0"/>
 *                   &lt;element name="telefones" type="{http://www.viaembratel.com.br/modulointegrador/vialivre/ConsumidorV1/}TelefonesType" minOccurs="0"/>
 *                   &lt;element name="email" type="{http://www.viaembratel.com.br/vialivre/modelo/prepago/consumidor/v1_0_0/types}EMailType" minOccurs="0"/>
 *                 &lt;/sequence>
 *               &lt;/restriction>
 *             &lt;/complexContent>
 *           &lt;/complexType>
 *         &lt;/element>
 *         &lt;element name="dadosVenda" type="{http://www.viaembratel.com.br/modulointegrador/vialivre/ConsumidorV1/}DadosVendaType" minOccurs="0"/>
 *         &lt;element name="usuario" type="{http://www.w3.org/2001/XMLSchema}string"/>
 *       &lt;/sequence>
 *     &lt;/restriction>
 *   &lt;/complexContent>
 * &lt;/complexType>
 * </pre>
 * 
 * 
 */
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "", propOrder = {
    "identificadorConsumidor",
    "dadosCadastrais",
    "dadosVenda",
    "usuario"
})
@XmlRootElement(name = "inserirOuAtualizarDadosCadastraisRequest")
public class InserirOuAtualizarDadosCadastraisRequest {

    protected Long identificadorConsumidor;
    @XmlElement(required = true)
    protected InserirOuAtualizarDadosCadastraisRequest.DadosCadastrais dadosCadastrais;
    protected DadosVendaType dadosVenda;
    @XmlElement(required = true)
    protected String usuario;

    /**
     * Gets the value of the identificadorConsumidor property.
     * 
     * @return
     *     possible object is
     *     {@link Long }
     *     
     */
    public Long getIdentificadorConsumidor() {
        return identificadorConsumidor;
    }

    /**
     * Sets the value of the identificadorConsumidor property.
     * 
     * @param value
     *     allowed object is
     *     {@link Long }
     *     
     */
    public void setIdentificadorConsumidor(Long value) {
        this.identificadorConsumidor = value;
    }

    /**
     * Gets the value of the dadosCadastrais property.
     * 
     * @return
     *     possible object is
     *     {@link InserirOuAtualizarDadosCadastraisRequest.DadosCadastrais }
     *     
     */
    public InserirOuAtualizarDadosCadastraisRequest.DadosCadastrais getDadosCadastrais() {
        return dadosCadastrais;
    }

    /**
     * Sets the value of the dadosCadastrais property.
     * 
     * @param value
     *     allowed object is
     *     {@link InserirOuAtualizarDadosCadastraisRequest.DadosCadastrais }
     *     
     */
    public void setDadosCadastrais(InserirOuAtualizarDadosCadastraisRequest.DadosCadastrais value) {
        this.dadosCadastrais = value;
    }

    /**
     * Gets the value of the dadosVenda property.
     * 
     * @return
     *     possible object is
     *     {@link DadosVendaType }
     *     
     */
    public DadosVendaType getDadosVenda() {
        return dadosVenda;
    }

    /**
     * Sets the value of the dadosVenda property.
     * 
     * @param value
     *     allowed object is
     *     {@link DadosVendaType }
     *     
     */
    public void setDadosVenda(DadosVendaType value) {
        this.dadosVenda = value;
    }

    /**
     * Gets the value of the usuario property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getUsuario() {
        return usuario;
    }

    /**
     * Sets the value of the usuario property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setUsuario(String value) {
        this.usuario = value;
    }


    /**
     * <p>Java class for anonymous complex type.
     * 
     * <p>The following schema fragment specifies the expected content contained within this class.
     * 
     * <pre>
     * &lt;complexType>
     *   &lt;complexContent>
     *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     *       &lt;sequence>
     *         &lt;element name="nome">
     *           &lt;simpleType>
     *             &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
     *               &lt;maxLength value="100"/>
     *             &lt;/restriction>
     *           &lt;/simpleType>
     *         &lt;/element>
     *         &lt;element name="tipoPessoa" type="{http://www.viaembratel.com.br/vialivre/modelo/prepago/consumidor/v1_0_0/types}TipoPessoaType"/>
     *         &lt;element name="documento" type="{http://www.viaembratel.com.br/vialivre/modelo/prepago/consumidor/v1_0_0/types}DocumentoType"/>
     *         &lt;element name="inscricaoEstadual" type="{http://www.viaembratel.com.br/vialivre/modelo/prepago/consumidor/v1_0_0/types}InscricaoEstadualType" minOccurs="0"/>
     *         &lt;element name="telefones" type="{http://www.viaembratel.com.br/modulointegrador/vialivre/ConsumidorV1/}TelefonesType" minOccurs="0"/>
     *         &lt;element name="email" type="{http://www.viaembratel.com.br/vialivre/modelo/prepago/consumidor/v1_0_0/types}EMailType" minOccurs="0"/>
     *       &lt;/sequence>
     *     &lt;/restriction>
     *   &lt;/complexContent>
     * &lt;/complexType>
     * </pre>
     * 
     * 
     */
    @XmlAccessorType(XmlAccessType.FIELD)
    @XmlType(name = "", propOrder = {
        "nome",
        "tipoPessoa",
        "documento",
        "inscricaoEstadual",
        "telefones",
        "email"
    })
    public static class DadosCadastrais {

        @XmlElement(required = true)
        protected String nome;
        @XmlElement(required = true)
        protected TipoPessoaType tipoPessoa;
        @XmlElement(required = true)
        protected String documento;
        protected String inscricaoEstadual;
        protected TelefonesType telefones;
        protected String email;

        /**
         * Gets the value of the nome property.
         * 
         * @return
         *     possible object is
         *     {@link String }
         *     
         */
        public String getNome() {
            return nome;
        }

        /**
         * Sets the value of the nome property.
         * 
         * @param value
         *     allowed object is
         *     {@link String }
         *     
         */
        public void setNome(String value) {
            this.nome = value;
        }

        /**
         * Gets the value of the tipoPessoa property.
         * 
         * @return
         *     possible object is
         *     {@link TipoPessoaType }
         *     
         */
        public TipoPessoaType getTipoPessoa() {
            return tipoPessoa;
        }

        /**
         * Sets the value of the tipoPessoa property.
         * 
         * @param value
         *     allowed object is
         *     {@link TipoPessoaType }
         *     
         */
        public void setTipoPessoa(TipoPessoaType value) {
            this.tipoPessoa = value;
        }

        /**
         * Gets the value of the documento property.
         * 
         * @return
         *     possible object is
         *     {@link String }
         *     
         */
        public String getDocumento() {
            return documento;
        }

        /**
         * Sets the value of the documento property.
         * 
         * @param value
         *     allowed object is
         *     {@link String }
         *     
         */
        public void setDocumento(String value) {
            this.documento = value;
        }

        /**
         * Gets the value of the inscricaoEstadual property.
         * 
         * @return
         *     possible object is
         *     {@link String }
         *     
         */
        public String getInscricaoEstadual() {
            return inscricaoEstadual;
        }

        /**
         * Sets the value of the inscricaoEstadual property.
         * 
         * @param value
         *     allowed object is
         *     {@link String }
         *     
         */
        public void setInscricaoEstadual(String value) {
            this.inscricaoEstadual = value;
        }

        /**
         * Gets the value of the telefones property.
         * 
         * @return
         *     possible object is
         *     {@link TelefonesType }
         *     
         */
        public TelefonesType getTelefones() {
            return telefones;
        }

        /**
         * Sets the value of the telefones property.
         * 
         * @param value
         *     allowed object is
         *     {@link TelefonesType }
         *     
         */
        public void setTelefones(TelefonesType value) {
            this.telefones = value;
        }

        /**
         * Gets the value of the email property.
         * 
         * @return
         *     possible object is
         *     {@link String }
         *     
         */
        public String getEmail() {
            return email;
        }

        /**
         * Sets the value of the email property.
         * 
         * @param value
         *     allowed object is
         *     {@link String }
         *     
         */
        public void setEmail(String value) {
            this.email = value;
        }

    }

}
